package cn.hp.controller;

import cn.hp.entity.Department;
import cn.hp.service.DepartmentService;
import cn.hp.util.Result;
import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;

import java.util.List;

@RestController
@RequestMapping("/api/department")
public class DepartmentController {
    @Autowired
    private DepartmentService departmentService;

    @RequestMapping("/page")
    public Result page(Department department, @RequestParam(value = "page",defaultValue = "1")Integer page,
                       @RequestParam(value = "limit",defaultValue = "10")Integer limit){
        PageInfo<Department> departmentPageInfo=departmentService.selectDepartment(department,page,limit);
        return Result.success(departmentPageInfo);
    }

    @GetMapping
    public Result find(Department department){
        List<Department> list=departmentService.selectDepartment(department);
        return Result.success(list);
    }

    @PostMapping
    public Result insert(@RequestBody Department department){
        int i=departmentService.insertDepartment(department);
        return i>0 ? Result.success("添加成功") : Result.error("添加失败");
    }

    @PutMapping
    public Result update(@RequestBody Department department){
        int i = departmentService.updateDepartment(department);
        return i>0 ? Result.success("修改成功") : Result.error("修改失败");
    }

    @DeleteMapping("/{id}")
    public Result delete(@PathVariable Integer id){
        int i=departmentService.deleteDepartment(id);
        return i>0 ? Result.success("删除成功") : Result.error("删除失败");
    }
}
